home *** CD-ROM | disk | FTP | other *** search
/ Software Vault: The Gold Collection / Software Vault - The Gold Collection (American Databankers) (1993).ISO / cdr11 / powerb5.zip / CHECK_ID.BAS < prev    next >
BASIC Source File  |  1993-06-01  |  733b  |  31 lines

  1. 'Program CHECK_ID.BAS
  2. DECLARE SUB CheckID (ID$, Flag%)
  3. Flag% = 0
  4. DO UNTIL Flag% = 1
  5.  INPUT "Enter ID Number: ", ID$
  6.  CheckID ID$, Flag%
  7.  IF Flag% = 0 THEN
  8.    PRINT "Invalid ID number! Re-enter: "
  9.  END IF
  10. LOOP
  11. PRINT "ID number "; ID$; " is valid."
  12.  
  13. SUB CheckID (ID$, Flag%)
  14.  ' Set Flag% to 1 if ID$ contains a
  15.  ' valid 6-digit ID number. Otherwise,
  16.  ' set Flag% to zero.
  17.  DIM D(6) AS INTEGER
  18.  Flag% = 0
  19.  IF LEN(ID$) <> 6 THEN EXIT SUB
  20.  FOR I% = 1 TO 6
  21.   A$ = MID$(ID$, I%, 1)
  22.   IF A$ < "0" OR A$ > "9" THEN EXIT SUB
  23.   D(I%) = VAL(A$)
  24.  NEXT I%
  25.  'Calculate last digit from first 5
  26.  Check = D(1) + D(2) * 2 + D(3)
  27.  Check = Check + D(4) * 2 + D5
  28.  Check = Check MOD 10
  29.  IF Check = D(6) THEN Flag% = 1
  30. END SUB
  31.